#ifndef __TURNKEY_DRV_MSG_H__
#define __TURNKEY_DRV_MSG_H__

#include "customer.h"


/*Pseudo Header*/
#define MSG_AUDIO_BASE			0x10000100
#define MSG_IMAGE_TASK_BASE		0x10000200
#define MSG_PPU_BASE			0x10000300
#define MSG_SYSTEM_BASE			0x10000500
#define MSG_AUDIO_DAC_BASE		0x10000700
#define MSG_USER_TIMER_BASE		0x10000800
#define MSG_RETURN_STATUS_BASE	0x10000900
#define MSG_JPEG_HANDLE_BASE	0x20000300
#define MSG_ICONSHOW_BASE		0x20000100
#define MSG_AVISHOW_BASE		0x20000400
#define MSG_STARTUP_BASE		0x20000500
#define MSG_AVIENC_BASE			0x20000600

typedef enum
{
	MSG_AVI_TICKER				= MSG_AVISHOW_BASE,
	MSG_AVI_AUDIO_END,
	MSG_AVI_MJPEG_END,
	MSG_AVI_DECODE_END,
	MSG_AVI_PARSE_HEADER,
	MSG_AVI_STATUS_CHECK,
	MSG_AVI_PLAY,
	MSG_AVI_STOP,
	MSG_AVI_PAUSE,
	MSG_AVI_RESUME,
	MSG_AVI_ERROR,
	MSG_AVI_PLUGOUT,
	MSG_AVI_DISPLAYSIZE_CHANGE,
	MSG_AVI_MAX,
	MSG_START_AVI_STOP,
	MSG_AVI_VOLUME_DOWN,
	MSG_AVI_VOLUME_UP
} MSG_AVI_ENUM;

typedef enum
{
	MSG_AVI_ENCODE_PACKER_START			= MSG_AVIENC_BASE,
	MSG_AVI_ENCODE_PACKER_STOP,
	MSG_AVI_ENCODE_START_AUDIO_RECORD,
	MSG_AVI_ENCODE_STOP_AUDIO_RECORD,
	MSG_AVI_ENCODE_START_VIDEO_ENCODE,
	MSG_AVI_ENCODE_STOP_VIDEO_ENCODE,
	MSG_AVI_ENCODE_START_CSI,
	MSG_AVI_ENCODE_STOP_CSI,
	MSG_AVI_ENCODE_START_SCALER,
	MSG_AVI_ENCODE_STOP_SCALER,
	MSG_AVI_ENCODE_START,
	MSG_AVI_ENCODE_STOP,
	MSG_AVI_ENCODE_PAUSE,
	MSG_AVI_ENCODE_RESUME,
	MSG_AVI_ENCODE_CAPTURE_PICTURE,
	MSG_AVI_ENCODE_STORAGE_FULL,
	MSG_AVI_ENCODE_STORAGE_ERR,
	MSG_AVI_ENCODE_EXIT
} MSG_AVIENC_ENUM;

typedef enum
{
	MSG_AUD_PLAY						= MSG_AUDIO_BASE,
	MSG_AUD_PLAY_BY_SPI,
	MSG_AUD_MIDI_PLAY,
	MSG_AUD_PAUSE,
	MSG_AUD_STOP,
	MSG_AUD_RESUME,
	MSG_AUD_AVI_PLAY,
	MSG_AUD_SET_MUTE,
	MSG_AUD_VOLUME_SET,
	MSG_AUD_DECODE_NEXT_FRAME,
	MSG_AUD_SPU_RESTART,
	MSG_AUD_PLAY_RES,
	MSG_AUD_PLAY_SPI_RES,
	MSG_AUD_STOP_RES,
	MSG_AUD_PAUSE_RES,
	MSG_AUD_RESUME_RES,
	MSG_AUD_MUTE_SET_RES,
	MSG_AUD_VOLUME_SET_RES,
	MSG_AUD_BG_PLAY_RES,
	MSG_AUD_BG_PLAY_SPI_RES,
	MSG_AUD_BG_STOP_RES,
	MSG_AUD_BG_PAUSE_RES,
	MSG_AUD_BG_RESUME_RES,
	MSG_AUD_START_SAMPLES_COUNT,
	MSG_AUD_PLAY_TIME_GET_START,
	MSG_AUD_PLAY_TIME_GET_END,
	MSG_AUD_PLAY_TIME_RES,
	MSG_AUD_REVERSE_SET,
	MSG_AUD_PLAY_SPEED_SET,
	MSG_AUD_MAX
} MSG_AUD_ENUM;

typedef enum
{
	MSG_ICON_DECODE						= MSG_ICONSHOW_BASE,
	MSG_ICON_DECODE_ERR,
	MSG_ICON_AVI_DECODE,
	MSG_ICON_INSERT,
	MSG_ICON_CFG,
	MSG_ICON_HANDOVER,
	MSG_ICON_FLY_FILL,
	MSG_ICON_REMOVE,
	MSG_ICON_FS_WAIT,
	MSG_ICON_RING_BUF_UPDATE,
	MSG_ICON_RING_BUF_REG_TO_SPRITE_IMG,
	MSG_ICON_SLIDE_WIN_CFG,
	MSG_ICON_RUNTIME_DISPLAY,
	MSG_ICON_ERROR_SHOW,
	MSG_ICON_KEY_SELECT_MOTION,
	MSG_ICON_IMAGE_FS_SCAN,
	MSG_ICON_SW_TIMER_ISR,
	MSG_ICON_COVER_FLOW_STATE,
	MSG_ICON_MAX
} MSG_ICONSHOW_ENUM;

typedef enum
{
	MSG_MJPEG_DECODE_OK					= MSG_JPEG_HANDLE_BASE,
	MSG_MJPEG_DECODE_FAIL,
	MSG_MJPEG_DECODE_STATUS,
	MSG_JPEG_DECODE_MAX
} MSG_MJPEG_DECODE_ENUM;

typedef enum
{
	// Request
	MSG_IMAGE_PARSE_HEADER_REQ			= MSG_IMAGE_TASK_BASE,
	MSG_IMAGE_DECODE_REQ,
	MSG_IMAGE_DECODE_EXT_REQ,
	MSG_IMAGE_SCALE_REQ,
	MSG_MJPEG_PARSE_HEADER_REQ,
	MSG_MJPEG_DECODE,
	MSG_MJPEG_DECODE_1,
	MSG_IMAGE_STOP_REQ,
	MSG_IMAGE_REQUEST_MAX,

	// Reply
	MSG_IMAGE_PARSE_HEADER_REPLY,
	MSG_IMAGE_DECODE_REPLY,
	MSG_IMAGE_DECODE_EXT_REPLY,
	MSG_IMAGE_SCALE_REPLY,
	MSG_MJPEG_PARSE_HEADER_REPLY,
	MSG_IMAGE_STOP_REPLY,
	MSG_IMAGE_REPLY_MAX
} MSG_IMAGE_TASK_ENUM;

typedef enum
{
	MSG_SYS_AD_KEY						= MSG_SYSTEM_BASE,
	MSG_SYS_UART_KEY,
	MSG_SYS_IR_KEY,
	MSG_SYS_ITOUCH_KEY,
	MSG_SYS_KEY_POWER,
	MSG_SYS_LOW_BATTERY,
	MSG_SYS_RTC,
	MSG_SYS_ALARM,
	MSG_SYS_HALT,
	MSG_SYS_CARD_PLUG_CHANGE,
	MSG_SYS_QUERY_CARD_EXIST,
	MSG_SYS_STORAGE_SCAN_START,
	MSG_SYS_STORAGE_SCAN_DONE,
	MSG_SYS_ERROR,
	MSG_SYS_USBD_PLUG_CHANGE,
	MSG_SYS_NAUGHTY_EVENT,
	MSG_SYS_USBD,
	MSG_SYS_USBH,
	MSG_SYS_ADAPTER_PLUG,
	MSG_SYS_BATTERY_CHECK,
	MSG_SYS_MAX
} MSG_SYS_ENUM;

typedef enum
{
	MSG_AUD_DMA_DBF_START				= MSG_AUDIO_DAC_BASE,
	MSG_AUD_DMA_DBF_DONE,
	MSG_AUD_DMA_DBF_RESTART,
	MSG_AUD_DMA_WIDX_CLEAR,
	MSG_AUD_STOP_SMOOTH_START,
	MSG_AUD_RAMP_DOWN_START,
	MSG_AUD_SPU_WIDX_CLEAR,
	MSG_AUD_SPU_WIDX_SET,
	MSG_AUD_SPU_SOFTCH_START,
	MSG_AUD_SPU_LEFT_DONE,
	MSG_AUD_SPU_RIGHT_DONE,
	MSG_AUD_DMA_PAUSE,
	MSG_AUD_LOW_PRIORITY_SET,
	MSG_AUD_DAC_STOP,
	MSG_AUD_DAC_REVRESE,
	MSG_AUD_DAC_REVRESE_CLEAR,
	MSG_AUD_DAC_MAX
} MSG_AUD_DAC_ENUM;

typedef enum
{
	MSG_USER_TIMER0						= MSG_USER_TIMER_BASE,
	MSG_USER_TIMER1,
	MSG_USER_TIMER2,
	MSG_USER_TIMER3,
	MSG_USER_TIMER4,
	MSG_USER_TIMER_MAX
} MSG_USER_TIMER_ENUM;

typedef enum
{
	MSG_SLIDE_SHOW_NEXT_TICK			= MSG_RETURN_STATUS_BASE,
	MSG_RETURN_STATUS_MAX
} MSG_RETURN_STATUS_ENUM;

//avi encode
typedef enum
{
	MSG_AVI_START_SENSOR					= 0x00100000,
	MSG_AVI_STOP_SENSOR						= 0x00200000,
	MSG_AVI_START_ENCODE					= 0x00300000,
	MSG_AVI_STOP_ENCODE						= 0x00400000,
	MSG_AVI_CAPTURE_PICTURE					= 0x00500000,
	MSG_AVI_CAPTURE_RAW_DATA                = 0x00600000,
	MSG_AVI_START_USB_WEBCAM				= 0x00700000,
	MSG_AVI_STOP_USB_WEBCAM					= 0x00800000,

	// Jpeg compress msg
	MSG_JPG_ISR_ENCODE_DONE					= 0x00900000,
	MSG_JPG_ISR_INPUT_EMPTY					= 0x00A00000,
	MSG_JPG_ISR_OUTPUT_FULL					= 0x00B00000,
	MSG_JPG_ISR_INPUT_EMPTY_OUTPUT_FULL		= 0x00C00000,
	MSG_JPEG_QUEUE_NOTIFY					= 0x00D00000,
	MSG_JPEG_CAPTURE_FRAME_DONE				= 0x00E00000,
	MSG_JPG_ISR_OUTPUT_FULL_SW				= 0x00F00000,

	// MISC
	MSG_PREVIEW_BUF_TO_DUMMY				= 0x01000000,
	MSG_PREVIEW_BUF_TO_DISPLAY				= 0x01100000,
	AVIPACKER_MSG_VIDEO_WRITE_DONE			= 0x01200000,
	AVIPACKER_MSG_VIDEO_WRITE_DONE1			= 0x01300000,
	PCCAM_MSG_VIDEO_WRITE_DONE				= 0x01400000,

	// Jpeg compress msg for rear
	MSG_JPG_ISR_ENCODE_DONE_REAR			= 0x01500000,
	MSG_JPG_ISR_INPUT_EMPTY_REAR			= 0x01600000,
	MSG_JPG_ISR_OUTPUT_FULL_REAR			= 0x01700000,
	MSG_JPG_ISR_INPUT_EMPTY_OUTPUT_FULL_REAR= 0x01800000,
	MSG_JPEG_QUEUE_NOTIFY_REAR				= 0x01900000,
	MSG_JPEG_CAPTURE_FRAME_DONE_REAR		= 0x01A00000,
	MSG_JPG_ISR_OUTPUT_FULL_SW_REAR			= 0x01B00000,
	MSG_JPG_ISR_DECODE_DONE_REAR			= 0x01C00000,
	MSG_JPG_ISR_PREVIEW_DONE_REAR			= 0x01D00000,
	MSG_USB_JPEG_READY_NOTIFY				= 0x01E00000,
	MSG_JPG_ISR_DECODE_FAIL_REAR			= 0x01F00000,

	MSG_AVI_SNAP_SHOT_FRONT					= 0x02000000,
	MSG_AVI_SNAP_SHOT_REAR					= 0x02100000,
	
	MSG_USB_JPEG_DECODE_FIFO_DONE			= 0x02500000

} AVI_ENCODE_STATE_ENUM;

//video sci fifo message
typedef enum
{
	MSG_VIDEO_ENCODE_FIFO_START				= 0x00100000,
	MSG_VIDEO_ENCODE_FIFO_CONTINUE			= 0x00200000,
	MSG_VIDEO_ENCODE_FIFO_END				= 0x00300000,
	MSG_VIDEO_ENCODE_FIFO_ERR				= 0x00400000,
	MSG_VIDEO_ENCODE_FIFO_1ST_DATE			= 0x00500000,
	MSG_VIDEO_ENCODE_FIFO_2ND_DATE			= 0x00600000,
	MSG_VIDEO_ENCODE_FIFO_LAST_DATE			= 0x00700000
} AVI_ENCODE_FIFO_ENUM;

typedef enum
{
	AVI_AUDIO_DMA_DONE						= 0,	//C_DMA_STATUS_DONE
	AVI_AUDIO_RECORD_START					= 0x01000000,
	AVI_AUDIO_RECORD_STOP					= 0x02000000,
	AVI_AUDIO_RECORD_STOPING				= 0x03000000,
	AVI_AUDIO_RECORD_RESTART				= 0x04000000,
	AVIPACKER_MSG_AUDIO_WRITE_DONE			= 0x05000000,
	AVI_GPS_INFO_HANDLE						= 0x06000000,
	AVI_G_SENSOR_INFO_HANDLE				= 0x07000000
} AVI_ENCODE_AUDIO_ENUM;

typedef enum
{
	//AVI_DEL_FILE = 0x5000
	MSG_STORAGE_SERVICE_DEL					= 0x5000,
	MSG_STORAGE_SERVICE_STORAGE_CHECK,
	MSG_STORAGE_SERVICE_FREESIZE_CHECK,
	MSG_STORAGE_SERVICE_AUTODEL_LOCK,
	MSG_STORAGE_SERVICE_AUTODEL_UNLOCK,
	MSG_STORAGE_SERVICE_VIDEO_FILE_DEL,
	MSG_STORAGE_SERVICE_TIMER_START,
	MSG_STORAGE_SERVICE_TIMER_STOP,
	MSG_STORAGE_SERVICE_USB_IN,
	MSG_STORAGE_SERVICE_AUD_REQ,
	MSG_STORAGE_SERVICE_AUD_REPLY,
	MSG_STORAGE_SERVICE_PIC_REQ,
	MSG_STORAGE_SERVICE_PIC_REQ2,
	MSG_STORAGE_SERVICE_PIC_REPLY,
	MSG_STORAGE_SERVICE_PIC_REPLY2,
	MSG_STORAGE_SERVICE_PIC_DONE,
	MSG_STORAGE_SERVICE_VID_REQ,
	MSG_STORAGE_SERVICE_VID_REPLY,
	MSG_STORAGE_SERVICE_VID_CYCLIC_REQ,
	MSG_STORAGE_SERVICE_VID_CYCLIC_REPLY,
	MSG_STORAGE_SERVICE_MOUNT,
	MSG_STORAGE_SERVICE_NO_STORAGE,
	MSG_STORAGE_SERVICE_FORMAT_REQ,
	MSG_STORAGE_SERVICE_FORMAT_REPLY,
	MSG_STORAGE_SERVICE_BROWSE_REQ,
	MSG_STORAGE_SERVICE_BROWSE_REPLY,
	MSG_STORAGE_SERVICE_THUMBNAIL_REQ,
	MSG_STORAGE_SERVICE_THUMBNAIL_REPLY,
	MSG_STORAGE_USBD_EXIT,
	MSG_STORAGE_USBD_PCAM_EXIT,
	MSG_STORAGE_SERVICE_FILE_DEL_ALL,
	MSG_STORAGE_SERVICE_LOCK_ONE,
	MSG_STORAGE_SERVICE_LOCK_ALL,
	MSG_STORAGE_SERVICE_UNLOCK_ONE,
	MSG_STORAGE_SERVICE_UNLOCK_ALL,
	MSG_STORAGE_SERVICE_WRITE_FILE,
	MSG_STORAGE_SERVICE_CLOSE_FILE,
	MSG_SET_ALARM,
	MSG_STORAGE_FIRMWARE_UPGRADE
} TASK_STORAGE_SERVICE_ENUM;

typedef enum
{
	MSG_PERIPHERAL_TASK_POLL_32HZ					= 0x6000,
	MSG_PERIPHERAL_TASK_POLL_4HZ,
	MSG_PERIPHERAL_TASK_POLL_1SEC,
	MSG_PERIPHERAL_TASK_POLL_2SEC,
	MSG_PERIPHERAL_TASK_POLL_5SEC,
	MSG_PERIPHERAL_TASK_KEY_REGISTER,
	MSG_PERIPHERAL_TASK_MOTION_DETECT_START,
	MSG_PERIPHERAL_TASK_MOTION_DETECT_STOP,
	MSG_PERIPHERAL_TASK_MOTION_DETECT_DELAY,
	MSG_PERIPHERAL_TASK_MOTION_DETECT_JUDGE,
	MSG_PERIPHERAL_TASK_USBD_DETECT_INIT,
	MSG_PERIPHERAL_TASK_LCD_BACKLIGHT_SET,
	MSG_PERIPHERAL_TASK_TIMER_VOLUME_ICON_SHOW,
	MSG_PERIPHERAL_TASK_G_SENSOR_POWER_ON_START,
	MSG_PERIPHERAL_USBD_EXIT,
	MSG_PERIPHERAL_TASK_SCREEN_SAVER_ENABLE,
	MSG_PERIPHERAL_BACK_POLLING_START,
	MSG_PERIPHERAL_BACK_POLLING_STOP,
	MSG_PERIPHERAL_TASK_BATTERY_CHARGE_ICON_BLINK_START,
	MSG_PERIPHERAL_TASK_BATTERY_CHARGE_ICON_BLINK_STOP,
	MSG_PERIPHERAL_TASK_BATTERY_LOW_BLINK_START,
	MSG_PERIPHERAL_TASK_BATTERY_LOW_BLINK_STOP,
	MSG_PERIPHERAL_TASK_DISPLAY_PLEASE_INSERT_SDC,
	MSG_PERIPHERAL_TASK_ISP_ISO_SET,
	MSG_PERIPHERAL_BACK_SENSOR_ENUM_SUCCESSFUL,
	MSG_PERIPHERAL_BACK_SENSOR_ENUM_FAILED,
	MSG_PERIPHERAL_BACK_SENSOR_DEVICE_NOT_FOUND,
	MSG_PERIPHERAL_BACK_SENSOR_REVERSE_PRAKING_DETECTED,
	MSG_PERIPHERAL_BACK_SENSOR_REVERSE_PRAKING_REMOVED,
	MSG_PERIPHERAL_HOME_REC_MIC_ICON_SHOW,
	MSG_PERIPHERAL_ITEM_LOCATION_REGISTER,
	MSG_PERIPHERAL_TOUCH_PANEL_EVENT_REPORT,
	//add
	MSG_PERIPHERAL_TASK_CAPTURE_FILE_SHOW_START,
	MSG_PERIPHERAL_TASK_LIVE_TOPBAR_TIMER,
	MSG_PERIPHERAL_SENSOR_LED_CRL,
	MSG_PERIPHERAL_TASK_POLL_10HZ
} TASK_PERIPHERAL_ENUM;

typedef enum
{
	MSG_APQ_MODE										= 0x7000,
	MSG_APQ_FUNCTION_KEY_ACTIVE,
	MSG_APQ_NEXT_KEY_ACTIVE,
	MSG_APQ_PREV_KEY_ACTIVE,
	MSG_APQ_PARK_MODE_SET,
	MSG_APQ_POWER_KEY_ACTIVE,
	MSG_APQ_SOS_KEY_ACTIVE,
	MSG_APQ_MENU_KEY_ACTIVE,
	MSG_APQ_GET_ONE_PHOTO,
	MSG_APQ_GET_JPEG_ON_RECORDING,
	MSG_APQ_SW_RESET,
	MSG_APQ_VOLUME_SHOW_END,
	MSG_APQ_VDO_REC_STOP,
	MSG_APQ_VDO_REC_RESTART,
	MSG_APQ_RECORD_SWITCH_FILE,
	MSG_APQ_AVI_PACKER_ERROR,
	MSG_APQ_CYCLIC_VIDEO_RECORD,
	MSG_APQ_SELECT_FILE_DEL_REPLY, // 0x10
	MSG_APQ_MOTION_DETECT_ACTIVE,
	MSG_APQ_MOTION_DETECT_TICK,
	MSG_APQ_MOTION_DETECT_TICK_END,
	MSG_APQ_MOTION_DETECT_ENTRY_CHECK,
	MSG_APQ_MOTION_DETECT_START,
	MSG_APQ_MOTION_DETECT_ICON_UPDATE,
	MSG_APQ_CONNECT_TO_PC,
	MSG_APQ_DISCONNECT_TO_PC,
	MSG_APQ_BATTERY_LVL_SHOW,
	MSG_APQ_LOW_BATTERY_HANDLE,
	MSG_APQ_KEY_IDLE,
	MSG_APQ_AUDIO_ENCODE_ERR,
	MSG_APQ_MJPEG_DECODE_END,
	MSG_APQ_SCROLL_BAR_END,
	MSG_APQ_PREVIEW_EFFECT_END,
	MSG_APQ_INIT_THUMBNAIL,				//0x20
	MSG_APQ_UPDATE_MP3_TOTAL_INDEX,
	MSG_APQ_KEY_WAKE_UP,
	MSG_APQ_STORAGE_SCAN_DONE,
	MSG_APQ_FREE_PACKER_MEM_DONE,
	MSG_APQ_USER_CONFIG_STORE,
	MSG_APQ_BATTERY_CHARGED_SHOW,
	MSG_APQ_BATTERY_CHARGED_CLEAR,
	MSG_APQ_AUDIO_EFFECT_MODE,
	MSG_APQ_AUDIO_EFFECT_OK,
	MSG_APQ_AUDIO_EFFECT_MENU,
	MSG_APQ_AUDIO_EFFECT_UP,
	MSG_APQ_AUDIO_EFFECT_DOWN,
	MSG_APQ_DISPLAY_DRAW_TIMER,
	MSG_APQ_FILE_DEL_ALL_REPLY,
	MSG_APQ_FILE_LOCK_ONE_REPLY,
	MSG_APQ_FILE_LOCK_ALL_REPLY,
	MSG_APQ_FILE_UNLOCK_ONE_REPLY,
	MSG_APQ_FILE_UNLOCK_ALL_REPLY,
	MSG_APQ_POWER_ON_AUTO_RECORD,
	MSG_APQ_FILE_LOCK_DURING_RECORDING,
	MSG_APQ_CAPTURE_CONTINUOUS_SHOOTING,
	MSG_APQ_BATTERY_LOW_SHOW,
	MSG_APQ_CAPTURE_PREVIEW_ON,
	MSG_APQ_FORWARD_FAST_PLAY,
	MSG_APQ_BACKWORD_FAST_PLAY,
	MSG_APQ_BACK_SENSOR_PLUG_IN,
	MSG_APQ_BACK_SENSOR_PLUG_OUT,
	MSG_APQ_BACK_A_CAR_ON,
	MSG_APQ_BACK_A_CAR_OFF,
	MSG_APQ_HOME_REC_MIC_ICON_KEY_ACTIVE,
	MSG_APQ_HOME_TIMER,
	MSG_APP_APP_ENTER,
	MSG_APP_SCREEN_BLACK_LIGHT_KEY_ACTIVE,
	MSG_APP_TOUCH_DOWN_ACTIVE,
	MSG_APP_TOUCH_UP_ACTIVE,
	MSG_APP_Date_TOUCH_DOWN_ACTIVE,
	MSG_APP_Date_TOUCH_UP_ACTIVE,
	MSG_APP_FORMAT_TOUCH_DOWN_ACTIVE,
	MSG_APP_FORMAT_TOUCH_UP_ACTIVE,
	MSG_APP_SLIDE_TOUCH_UP_ACTIVE,
	MSG_APP_SLIDE_TOUCH_DOWN_ACTIVE,
#if(defined(C_ZHONGQIN_SPECIAL) && (C_ZHONGQIN_SPECIAL == CUSTOM_ON))
	MSG_APQ_DEL_KEY_ACTIVE,
#endif
	MSG_APQ_SETTING_TICK,
	MSG_APQ_MODE_LONG_PRESS,
	//MSG_APQ_CLEAR_CAPTURE_FILE_NAME,
	MSG_APQ_DEL_ALL_ACTIVE,
	MSG_APQ_DELETE_KEY_ACTIVE,
	MSG_APQ_LEFT_KEY_ACTIVE,
	MSG_APQ_LEFT_LONG_KEY_ACTIVE,
	MSG_APQ_RIGHT_KEY_ACTIVE,
	MSG_APQ_RIGHT_LONG_KEY_ACTIVE,
	MSG_APQ_USB_DISCONNECT_SHOW,
	EVENT_APQ_ERR_MSG
} TASK_STATE_HANDLING_APQ_ENUM;

typedef enum
{
	MSG_USBD_PLUG_IN									= 0x8000,
	MSG_USBD_INITIAL,
	MSG_USBD_PLUG_OUT,
	MSG_USBCAM_PLUG_IN,
	MSG_USBCAM_INITIAL,
	MSG_USBCAM_PLUG_OUT,
	MSG_CHARGE_PLUG_OUT,
	MSG_JPEG_COMPRESS
} TASK_USB_ENUM;

typedef enum
{
	MSG_USB_HOST_UVC_PLUG_IN							= 0x0800,
	MSG_USB_HOST_UVC_INITIAL,
	MSG_USB_HOST_UVC_PLUG_OUT,
	MSG_USB_HOST_UVC_GETNEXTISODATA,
	MSG_USB_HOST_UVC_JPEG_DECODE,
	MSG_USB_HOST_UVC_DUMMY_JPG_SEND,
	MSG_USB_HOST_UVC_Scaler_Disp,
	MSG_USB_HOST_UVC_START_GET_DATA,
	MSG_USB_HOST_UVC_STOP_GET_DATA,
	MSG_USB_HOST_UVC_ABUF_DONE,
	MSG_USB_HOST_UVC_A_OVERFLOW_EVENT,
	MSG_USB_HOST_UVC_BBUF_DONE,
	MSG_USB_HOST_UVC_B_OVERFLOW_EVENT,
	MSG_USB_HOST_UVC_UPDATE_FRAME_LIST_EVENT,
	MSG_USB_HOST_UVC_CHANGE_RESOLUTION,
	MSG_USB_HOST_UVC_REINITIAL
} TASK_USB_HOST_UVC_ENUM;

typedef enum
{
	MSG_USB_HOST_UVC_backcardet = 0x0800,
	MSG_USB_HOST_UVC_Reinital = 0x900
}TASK_USB_HOST_UVC_backcardetENUM;

typedef enum
{
	MSG_DISPLAY_TASK_JPEG_DRAW							= 0x01000000,
	MSG_DISPLAY_TASK_MJPEG_DRAW							= 0x02000000,
	MSG_DISPLAY_TASK_SENSOR_DRAW						= 0x03000000,
	MSG_DISPLAY_TASK_BACK_A_CAR_DRAW					= 0x04000000,
	MSG_DISPLAY_TASK_EFFECT_INIT						= 0x05000000,
	MSG_DISPLAY_TASK_ICON_SHOW							= 0x06000000,
	MSG_DISPLAY_TASK_ICON_CLEAR							= 0x07000000,
	MSG_DISPLAY_TASK_MD_ICON_SHOW						= 0x08000000,
	MSG_DISPLAY_TASK_STRING_DRAW						= 0x09000000,
	MSG_DISPLAY_TASK_LEFT_REC_TIME_DRAW					= 0x0A000000,
	MSG_DISPLAY_TASK_LEFT_REC_TIME_CLEAR				= 0x0B000000,
	MSG_DISPLAY_TASK_STRING_ICON_DRAW					= 0x0C000000,
	MSG_DISPLAY_TASK_STRING_ICON_CLEAR					= 0x0D000000,
	MSG_DISPLAY_TASK_SETTING_DRAW						= 0x0E000000,
	MSG_DISPLAY_TASK_SETTING_SLIDE_DRAW					= 0x0F000000,
	MSG_DISPLAY_TASK_File_list_UI_DRAW					= 0x1F000000,
	MSG_DISPLAY_TASK_ROTATE_DONE						= 0x20000000,
	MSG_DISPLAY_TASK_LOCK_ON							= 0x21000000,
	MSG_DISPLAY_TASK_LOCK_OFF							= 0x22000000,
	
	//add by zzy
	MSG_DISPLAY_TASK_STRING_DRAW1						= 0x23000000,
	MSG_DISPLAY_TASK_STRING_DRAW2						= 0x24000000,

	MSG_DISPLAY_TASK_PROGRESS_BAR_SHOW				= 0x25000000
} TASK_DISPLAY_ENUM;

#endif //__TURNKEY_DRV_MSG_H__
